#include "elementodefase.h"

ElementoDeFase::ElementoDeFase():
    _imagemElementoDeFase(),
    _elemento(editacao::NONE)
{
}

ElementoDeFase::ElementoDeFase(editacao::Elementos elemento):
    _elemento(elemento)
{
    QString nomeImg;
    switch(this->_elemento)
    {
        case editacao::CAIXA:
            nomeImg = ":img/img/caixa.png";
            break;
        case editacao::HEROI:
            nomeImg = ":img/img/spiderman.png";
            break;
        case editacao::PAREDE:
            nomeImg = ":img/img/parede.png";
            break;
        case editacao::PONTOX:
            nomeImg = ":img/img/pontox.png";
            break;
        case editacao::CHAO:
            nomeImg = ":img/img/chao.png";
        default:
            break;
    }

    this->_imagemElementoDeFase = QImage(nomeImg).scaled(editacao::WIDTH_ELEMENTOS, editacao::HEIGHT_ELEMENTOS);
}

ElementoDeFase::ElementoDeFase(QImage &imagemElementoDeFase, editacao::Elementos elemento):
    _imagemElementoDeFase(imagemElementoDeFase.scaled(editacao::WIDTH_ELEMENTOS, editacao::HEIGHT_ELEMENTOS)),
    _elemento(elemento)
{
}

ElementoDeFase::ElementoDeFase(const ElementoDeFase &elementoDeFase):
    _imagemElementoDeFase(elementoDeFase.imagemElementoDeFase().scaled(editacao::WIDTH_ELEMENTOS, editacao::HEIGHT_ELEMENTOS)),
    _elemento(elementoDeFase.elemento())
{
}

ElementoDeFase::~ElementoDeFase()
{
}

QImage ElementoDeFase::imagemElementoDeFase()const
{
    return this->_imagemElementoDeFase;
}

editacao::Elementos ElementoDeFase::elemento()const
{
    return this->_elemento;
}
